import Vue from "vue";
import App from "./App.vue";

// 导入element模块
import ElementUI from "element-ui";
// 导入element样式
import "element-ui/lib/theme-chalk/index.css";
// 使用element插件
Vue.use(ElementUI);

// 导入vuex模块
import store from "./store/index";

// 导入router模块
import router from "@/router/index.js";

Vue.config.productionTip = false;

// 定义拦截规则
router.beforeEach((to, from, next) => {
  // 判断该路由是否需要登录权限
  if (to.meta.requireAuth) {
    // 通过window.sessionStorage获取当前的user是否存在
    if (window.sessionStorage.getItem("user") != null) {
      // 放行
      next();
    } else {
      // 去登录页面，并且在完成登录操作后回到 事先本身要去的路由
      next({
        path: "/login",
        query: { redirect: to.fullPath },
      });
    }
  } else {
    next();
  }
});

new Vue({
  render: (h) => h(App),
  store,
  router,
}).$mount("#app");
